package com.tcm.service;

import com.tcm.entity.CommentReport;
import com.baomidou.mybatisplus.extension.service.IService;
import com.tcm.entity.vo.CommentReportDto;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
* @author Guqier
* @description 针对表【ts_comment_report(评论举报表)】的数据库操作Service
* @createDate 2023-10-12 16:40:42
*/
public interface CommentReportService extends IService<CommentReport> {

    /**
     * 举报评论
     * @param dto 举报数据
     * @param currUserId 当前用户ID
     * @param currAccount 当前用户账号
     * @return 处理结果
     */
    boolean reportComment(CommentReportDto dto, Long currUserId, String currAccount);

    /**
     * 获取评论举报列表
     * @return 评论举报列表
     */
    List<CommentReportDto> getCommentReportList();

    /**
     * 处理评论举报
     * @param reportId 举报ID
     * @param reason 处理信息
     * @param currUserId 当前用户ID
     * @param currAccount 当前用户账号
     * @return 处理结果
     */
    @Transactional
    boolean handleCommentReport(Long reportId, String reason, Long currUserId, String currAccount, Integer type);
}
